/* Copyright (C) 2010 Fredrique Samuels, fredriquesamuels@gmail.com 

 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#ifndef _TRI_COMMON_H_
#define _TRI_COMMON_H_
 
//Include library header
#include "texture.h"
#include <string>

namespace tri{

/**
 * Bind an image to the opengl renderer.
 * If the image does not exists it is created.
 * If the image could not be converted to a texture 
 * no image is bound to opengl. The curretn working
 * Image will be blank.
 *
 * @param image The image to bind to opengl
 * @param tex If the image is successfully bound 
 *			a reference to the image will be assigned to 
 *          tex. tex is made NULL by default.
 */
void bindImage(std::string image,tri::TTexture* tex);

/**
 * Bind an image to the opengl renderer.
 * If the image does not exists it is created.
 * If the image could not be converted to a texture 
 * no image is bound to opengl. The curretn working
 * Image will be blank.
 *
 * @param image The image to bind to opengl
 */
void bindImage(std::string image);

}

#endif
